package com.rzl.expense.expense.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rzl.expense.common.annotation.Excel;
import com.rzl.expense.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 房租报账点信息对象 rent_billaccount
 * 
 * @author expense
 * @date 2024-11-27
 */
public class RentBillaccount extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 报账点Id */
    private String billaccountId;

    /** 所属省份 */
    @Excel(name = "所属省份")
    private String prvId;

    /** 所属区县 */
    @Excel(name = "所属区县")
    private String regId;

    /** 报账点编码 */
    @Excel(name = "报账点编码")
    private String billaccountCode;

    /** 报账点名称 */
    @Excel(name = "报账点名称")
    private String billaccountName;

    /** 报账点状态 */
    @Excel(name = "报账点状态")
    private Long billaccountState;

    /** 备注 */
    @Excel(name = "备注")
    private String billaccountNote;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long auditState;

    /** 报账点类型 */
    @Excel(name = "报账点类型")
    private Long billaccountType;

    /** 发起审核流程提交人 */
    @Excel(name = "发起审核流程提交人")
    private String auditingUserId;

    /** 发起审核流程时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发起审核流程时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date auditingDate;

    /** 计划缴费日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划缴费日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planDate;

    /** 所属地市 */
    @Excel(name = "所属地市")
    private String pregId;

    /** 审核环境角色 */
    @Excel(name = "审核环境角色")
    private String auditingRoleCode;

    /** 所属部门 */
    @Excel(name = "所属部门")
    private String belongDept;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long isSpecial;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date planDateOld;

    /** 录入人id */
    @Excel(name = "录入人id")
    private String enterUserId;

    /** 删除原因 */
    @Excel(name = "删除原因")
    private String deleteReason;

    /** 错误数据更正编号 */
    @Excel(name = "错误数据更正编号")
    private String correctId;

    /** 错误数据更正时间  */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "错误数据更正时间 ", width = 30, dateFormat = "yyyy-MM-dd")
    private Date correctTime;

    /** 报账点用途1报账2月报 */
    @Excel(name = "报账点用途1报账2月报")
    private Integer billaccountUse;

    /** 需审核的报账点类型(用于报账点类型修改) */
    @Excel(name = "需审核的报账点类型(用于报账点类型修改)")
    private Long pendingBillaccountType;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String billaccountRemarke;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastModifyTime;

    /** 普服类资源金额比例 */
    @Excel(name = "普服类资源金额比例")
    private BigDecimal normalResourceAmountRatio;

    /** 当前审核人 */
    @Excel(name = "当前审核人")
    private String currentAuditingUser;

    public void setBillaccountId(String billaccountId) 
    {
        this.billaccountId = billaccountId;
    }

    public String getBillaccountId() 
    {
        return billaccountId;
    }
    public void setPrvId(String prvId) 
    {
        this.prvId = prvId;
    }

    public String getPrvId() 
    {
        return prvId;
    }
    public void setRegId(String regId) 
    {
        this.regId = regId;
    }

    public String getRegId() 
    {
        return regId;
    }
    public void setBillaccountCode(String billaccountCode) 
    {
        this.billaccountCode = billaccountCode;
    }

    public String getBillaccountCode() 
    {
        return billaccountCode;
    }
    public void setBillaccountName(String billaccountName) 
    {
        this.billaccountName = billaccountName;
    }

    public String getBillaccountName() 
    {
        return billaccountName;
    }
    public void setBillaccountState(Long billaccountState) 
    {
        this.billaccountState = billaccountState;
    }

    public Long getBillaccountState() 
    {
        return billaccountState;
    }
    public void setBillaccountNote(String billaccountNote) 
    {
        this.billaccountNote = billaccountNote;
    }

    public String getBillaccountNote() 
    {
        return billaccountNote;
    }
    public void setAuditState(Long auditState) 
    {
        this.auditState = auditState;
    }

    public Long getAuditState() 
    {
        return auditState;
    }
    public void setBillaccountType(Long billaccountType) 
    {
        this.billaccountType = billaccountType;
    }

    public Long getBillaccountType() 
    {
        return billaccountType;
    }
    public void setAuditingUserId(String auditingUserId) 
    {
        this.auditingUserId = auditingUserId;
    }

    public String getAuditingUserId() 
    {
        return auditingUserId;
    }
    public void setAuditingDate(Date auditingDate) 
    {
        this.auditingDate = auditingDate;
    }

    public Date getAuditingDate() 
    {
        return auditingDate;
    }
    public void setPlanDate(Date planDate) 
    {
        this.planDate = planDate;
    }

    public Date getPlanDate() 
    {
        return planDate;
    }
    public void setPregId(String pregId) 
    {
        this.pregId = pregId;
    }

    public String getPregId() 
    {
        return pregId;
    }
    public void setAuditingRoleCode(String auditingRoleCode) 
    {
        this.auditingRoleCode = auditingRoleCode;
    }

    public String getAuditingRoleCode() 
    {
        return auditingRoleCode;
    }
    public void setBelongDept(String belongDept) 
    {
        this.belongDept = belongDept;
    }

    public String getBelongDept() 
    {
        return belongDept;
    }
    public void setIsSpecial(Long isSpecial) 
    {
        this.isSpecial = isSpecial;
    }

    public Long getIsSpecial() 
    {
        return isSpecial;
    }
    public void setPlanDateOld(Date planDateOld) 
    {
        this.planDateOld = planDateOld;
    }

    public Date getPlanDateOld() 
    {
        return planDateOld;
    }
    public void setEnterUserId(String enterUserId) 
    {
        this.enterUserId = enterUserId;
    }

    public String getEnterUserId() 
    {
        return enterUserId;
    }
    public void setDeleteReason(String deleteReason) 
    {
        this.deleteReason = deleteReason;
    }

    public String getDeleteReason() 
    {
        return deleteReason;
    }
    public void setCorrectId(String correctId) 
    {
        this.correctId = correctId;
    }

    public String getCorrectId() 
    {
        return correctId;
    }
    public void setCorrectTime(Date correctTime) 
    {
        this.correctTime = correctTime;
    }

    public Date getCorrectTime() 
    {
        return correctTime;
    }
    public void setBillaccountUse(Integer billaccountUse) 
    {
        this.billaccountUse = billaccountUse;
    }

    public Integer getBillaccountUse() 
    {
        return billaccountUse;
    }
    public void setPendingBillaccountType(Long pendingBillaccountType) 
    {
        this.pendingBillaccountType = pendingBillaccountType;
    }

    public Long getPendingBillaccountType() 
    {
        return pendingBillaccountType;
    }
    public void setBillaccountRemarke(String billaccountRemarke) 
    {
        this.billaccountRemarke = billaccountRemarke;
    }

    public String getBillaccountRemarke() 
    {
        return billaccountRemarke;
    }
    public void setLastModifyTime(Date lastModifyTime) 
    {
        this.lastModifyTime = lastModifyTime;
    }

    public Date getLastModifyTime() 
    {
        return lastModifyTime;
    }
    public void setNormalResourceAmountRatio(BigDecimal normalResourceAmountRatio) 
    {
        this.normalResourceAmountRatio = normalResourceAmountRatio;
    }

    public BigDecimal getNormalResourceAmountRatio() 
    {
        return normalResourceAmountRatio;
    }
    public void setCurrentAuditingUser(String currentAuditingUser) 
    {
        this.currentAuditingUser = currentAuditingUser;
    }

    public String getCurrentAuditingUser() 
    {
        return currentAuditingUser;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("billaccountId", getBillaccountId())
            .append("prvId", getPrvId())
            .append("regId", getRegId())
            .append("billaccountCode", getBillaccountCode())
            .append("billaccountName", getBillaccountName())
            .append("billaccountState", getBillaccountState())
            .append("billaccountNote", getBillaccountNote())
            .append("auditState", getAuditState())
            .append("billaccountType", getBillaccountType())
            .append("auditingUserId", getAuditingUserId())
            .append("auditingDate", getAuditingDate())
            .append("planDate", getPlanDate())
            .append("pregId", getPregId())
            .append("auditingRoleCode", getAuditingRoleCode())
            .append("belongDept", getBelongDept())
            .append("isSpecial", getIsSpecial())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("planDateOld", getPlanDateOld())
            .append("enterUserId", getEnterUserId())
            .append("deleteReason", getDeleteReason())
            .append("correctId", getCorrectId())
            .append("correctTime", getCorrectTime())
            .append("billaccountUse", getBillaccountUse())
            .append("pendingBillaccountType", getPendingBillaccountType())
            .append("billaccountRemarke", getBillaccountRemarke())
            .append("lastModifyTime", getLastModifyTime())
            .append("normalResourceAmountRatio", getNormalResourceAmountRatio())
            .append("currentAuditingUser", getCurrentAuditingUser())
            .toString();
    }
}
